home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 41 / Amiga Format CD41 (1999-06)(Future Publishing)(GB)[!][issue 1999-07].iso / -screenplay- / otherstuff / frogbot / frogbot.txt < prev    next >
Text File  |  1999-04-20  |  22KB  |  1,147 lines

  1. Short     : Optimized Frogbot for quake
  2. Author   : christian.michael@groenjord.dk
  3. Uploader : christian.michael@groenjord.dk
  4. Type     : game/patch
  5.  
  6. Optional : game/data/frogmaps.lha   (all supported custom maps)
  7.            game/data/fastqprogs.lha (for extra speed)  
  8.  
  9.  
  10. Here you have it! The best quake dm-bot in existence, custom optimized by
  11. me (surgeon). I have used optimizations from my qboost3-pack, but managed
  12. to squeezed out some extra speed :)
  13.  
  14. The maps supported in this release are:
  15.  
  16. dm4
  17.  
  18. dm6
  19.  
  20. bless
  21.  
  22. fribdev1(including the variations fribdev1_2 & fribdev1_3)
  23.  
  24. rapture1
  25.  
  26. ztndm1
  27.  
  28. ztndm2
  29.  
  30. ztndm3
  31.  
  32. ztndm4
  33.  
  34. ztndm5
  35.  
  36. ztndm6
  37.  
  38.  
  39. I must stress that the only work I have done is
  40. to fps-optimize the source (68K friendly) and recompile with extra waypoints.
  41. Unfortunately I had to modify the source extensively, since it's written for
  42. a compiler called preqcc. Faqcc does not handle includes like preqcc,
  43. so I had to disable all of them and make sure, that only the parts relevant
  44. for normal quake was compiled.
  45.  
  46.  
  47. Credit must go to:
  48.  
  49.  
  50. Robert 'Frog' Field - creator of the Frogbot.
  51.  
  52.  
  53. and the waypoint authors:
  54.  
  55. Brian 'EraZoR' Mathiasen
  56. Hylke 'Gibbie' Beck
  57. Jonathan 'Crunchy' Slark
  58. Matt 'Asdf' McChesney
  59.  
  60.  
  61. To install this mod, extract it to your quakedir.
  62. Start quake with the parameter -game frogbot
  63.  
  64. Enjoy!
  65.  
  66. surgeon
  67.  
  68.  
  69. The piece of text below is Frogbot authors original txt.file
  70.  
  71. ---------------------------------------------------------------------------
  72.  
  73. Title        : Frogbot
  74.  
  75. Filename     : frogbot012c.zip
  76.  
  77. Date         : 23 October 1998
  78.  
  79. Author       : Robert Field
  80.  
  81. Email        : frog@powerup.com.au
  82.  
  83. Download     : http://www.telefragged.com/metro/
  84.  
  85.  
  86.  
  87.  
  88.  
  89. What's new in version 0.12
  90.  
  91. --------------------------
  92.  
  93.  
  94.  
  95. - Various miscellaneous bugs fixed.
  96.  
  97. - ztndm3 support.
  98.  
  99. - Bots can understand air movement on difficult jumps (ie. curved
  100.  
  101.   jump prediction).
  102.  
  103. - Qizmo support for smoother Quakeworld play.
  104.  
  105. - More friendly teammates (they hopefully won't try to steal items
  106.  
  107.   that you are waiting for).
  108.  
  109. - msg= command in normal Quake, and msg command in Quakeworld now
  110.  
  111.   works.
  112.  
  113. - Better bot jumping and ledge avoidance.
  114.  
  115.   Though I improved the jump prediction algorithm substantially, I
  116.  
  117.   also found (and fixed) quite a nasty jump bug. Basically, in 5
  118.  
  119.   server frames each second a jump request was ignored. Hence either
  120.  
  121.   the jump was delayed or too late to make (the delay being the frame
  122.  
  123.   time of the server - this was quite bad in the Quakeworld version,
  124.  
  125.   which I hadn't tested adequately, since it has only 18.2 server
  126.  
  127.   frames per second).
  128.  
  129. - Added experimental lookcheat command.
  130.  
  131. - Added skinfix command.
  132.  
  133. - Source included.
  134.  
  135. - noflash command.
  136.  
  137.  
  138.  
  139.  
  140.  
  141. What's new in version 0.11
  142.  
  143. --------------------------
  144.  
  145.  
  146.  
  147. - Colored bodies in GLQuake.
  148.  
  149. - QuakeWorld version.
  150.  
  151. - QuakeWorld emulation in normal Quake version.
  152.  
  153. - Backpack retrieval bug fixed.
  154.  
  155. - Better bot weapon selection.
  156.  
  157. - Faster spawning of bots.
  158.  
  159. - Some changes to AI.
  160.  
  161.  
  162.  
  163.  
  164.  
  165. What's most needed
  166.  
  167. ------------------
  168.  
  169.  
  170.  
  171. - More map support.
  172.  
  173.  
  174.  
  175.  
  176.  
  177. How to Install the Modification
  178.  
  179. -------------------------------
  180.  
  181.  
  182.  
  183. If you have a Pak0.pak file in your frogbot directory from a previous
  184.  
  185. frogbot version then make sure that you remove it.
  186.  
  187.  
  188.  
  189. It is recommended that you have Quake version 1.06 or later.
  190.  
  191.  
  192.  
  193. Unzip frogbot012c.zip into your Quake directory. Include in your
  194.  
  195. command line parameters -game frogbot -zone 1024. The zone command
  196.  
  197. should stop unwanted crashes from happening. It is a good idea to
  198.  
  199. allocate as much memory as possible with the -winmem or -heapsize
  200.  
  201. (GLQuake) commands. For example, -winmem 16 or -heapsize 16384
  202.  
  203. (preferably more). Having large .cfg files which are executed at
  204.  
  205. startup can cause the Frogbot mod to crash. If this happens then I
  206.  
  207. suggest binding the execution of these to a key.
  208.  
  209.  
  210.  
  211.  
  212.  
  213. Quick way to spawning Frogbots
  214.  
  215. ------------------------------
  216.  
  217.  
  218.  
  219. addbot, add2bots, add3bots, add4bots will add between 1 to 4 bots.
  220.  
  221. addbot0 through to addbot13 will add one bot of the specified team
  222.  
  223. color.
  224.  
  225.  
  226.  
  227. Note: Due to the loading mechanism, be patient when spawning bots.
  228.  
  229.  
  230.  
  231.  
  232.  
  233. Removing Frogbots
  234.  
  235. -----------------
  236.  
  237.  
  238.  
  239. removebot removes the last bot that joined the game.
  240.  
  241. removeallbots removes all bots.
  242.  
  243.  
  244.  
  245.  
  246.  
  247. More advanced ways of spawning Frogbots
  248.  
  249. ---------------------------------------
  250.  
  251.  
  252.  
  253. The first thing you should do is grab yourself a copy of the Frogbot
  254.  
  255. Editor by Tony Browneller. This is a cool program that makes it easy
  256.  
  257. to create custom bots (eg. it has a graphical method for making bot
  258.  
  259. names). Some of the commands that follow are superseded by the use of
  260.  
  261. the Editor.
  262.  
  263.  
  264.  
  265. In the frogbot/bots directory you will see files with the .bot suffix.
  266.  
  267. Executing one of these will spawn the bot with the information of that
  268.  
  269. file (or any existing information such as skill if this isn't in the
  270.  
  271. file). You may make your own .bot file and then execute it to spawn a
  272.  
  273. bot to your liking. You can select the name, skin (you need a
  274.  
  275. player.mdl file for this - place this file in the directory
  276.  
  277. frogbot/progs), skill, and colors (both teamplay 0 and teamplay). By
  278.  
  279. default, using the addbot commands will randomly spawn a bot from the
  280.  
  281. list specified in frogbot.cfg. Any .bot file you create can be added
  282.  
  283. to the random spawn list by editting frogbot.cfg. Follow the existing
  284.  
  285. pattern (eg. the number on the first line is the number of bot aliases
  286.  
  287. following).
  288.  
  289.  
  290.  
  291. A .bot file should start with the following 2 lines:
  292.  
  293. wait;lines=
  294.  
  295. wait;impulse 26
  296.  
  297.  
  298.  
  299. 26 here means that there is a total of 26 non-blank lines in the file.
  300.  
  301. Though it is optional, it is very useful in stopping reading error
  302.  
  303. messages of your .bot file, especially if you are a client logging
  304.  
  305. into a Frogbot server (note that if you spawn a bot on a server, your
  306.  
  307. own listing of .bot files is used, not those on the server - so you
  308.  
  309. can turn up with your own Frogbot 'buddies').
  310.  
  311.  
  312.  
  313. A .bot file should end with addbot (though possibly with addbot0
  314.  
  315. through addbot13 - however, teamshirt= and teampants= discussed below
  316.  
  317. supercede this command). The lines= command above checks lines up to
  318.  
  319. this point.
  320.  
  321.  
  322.  
  323. At this point it may be beneficial to refer to bots/hello.bot. It will
  324.  
  325. spawn a bot with name 'Hello' (with some decoration), color 2 13
  326.  
  327. during teamplay 0, color 5 4 during teamplay, skill 105, skin 3 (in
  328.  
  329. Quake), and skin ancients (in QuakeWorld).
  330.  
  331.  
  332.  
  333.  
  334.  
  335. The name= command
  336.  
  337. -----------------
  338.  
  339.  
  340.  
  341. The name= command must be followed by a sequence of impulse numbers
  342.  
  343. which specify the characters of the name you are creating. You must
  344.  
  345. indicate the end of this sequence with impulse_0 (NOT impulse 0).
  346.  
  347. Use the lettercodes command to tell you what numbers correspond to
  348.  
  349. what letters (type lettercodes more than once to cycle through the
  350.  
  351. entire list).
  352.  
  353.  
  354.  
  355.  
  356.  
  357. The setname command
  358.  
  359. -------------------
  360.  
  361.  
  362.  
  363. You can use the name= command with the setname command to make your
  364.  
  365. 'fun' name. Execute hello.nam to see an example of this.
  366.  
  367.  
  368.  
  369.  
  370.  
  371. The admin= command
  372.  
  373. ------------------
  374.  
  375.  
  376.  
  377. The admin= command must be followed by 3 impulse numbers. This sets
  378.  
  379. your admin code. By default a server and the clients have admin code
  380.  
  381. 0 0 0. The listen server, or the first client logging onto a dedicated
  382.  
  383. server, not only sets their own admin code by the admin= command, but
  384.  
  385. also sets the server admin code. Many commands will only work if your
  386.  
  387. admin code is equal to that of the server. To enable everyone to
  388.  
  389. execute any command, just leave everyone's admin code as 0 0 0
  390.  
  391. (ie. ignore the admin= command).
  392.  
  393.  
  394.  
  395.  
  396.  
  397. impulse_0 reminder
  398.  
  399. ------------------
  400.  
  401.  
  402.  
  403. If you want to use impulse 0, then use impulse_0 instead (impulse 0
  404.  
  405. doesn't work). All impulse commands should be in the range from 0 to
  406.  
  407. 254 (255 is missing since I internally use it for 0).
  408.  
  409.  
  410.  
  411.  
  412.  
  413. Other '=' commands
  414.  
  415. ------------------
  416.  
  417.  
  418.  
  419. The list of the other '=' commands is: skill=, skin=, shirt=, pants=,
  420.  
  421. teamshirt=, teampants=, bots=, teamplay=, deathmatch=, timelimit=,
  422.  
  423. fraglimit=, addbot=, msg=.
  424.  
  425. All these commands must be followed by a single impulse command.
  426.  
  427. skill=, skin=, shirt=, pants=, teamshirt=, teampants= set particular
  428.  
  429. attributes of bots you spawn. For a listen server, skill and skill=
  430.  
  431. do the same thing. Also, setting teamshirt= and teampants= to say 4
  432.  
  433. and then using addbot, is equivalent to using addbot4.
  434.  
  435. The msg= command is just like the Quakeworld msg command. It has
  436.  
  437. values 0 to 3 ranging from all messages being printed to none being
  438.  
  439. printed.
  440.  
  441. The bots= command is used in the frogbot.cfg file. This is the only
  442.  
  443. place it should be used, and should be changed as you add more bots
  444.  
  445. to the random spawn list in frogbot.cfg.
  446.  
  447. teamplay=, deathmatch=, timelimit=, fraglimit= give remote access to
  448.  
  449. the corresponding variables on the server.
  450.  
  451. addbot= is used to spawn multiple (random) bots.
  452.  
  453. Note: If you use color 14 with color command then a random color will
  454.  
  455. be used.
  456.  
  457.  
  458.  
  459.  
  460.  
  461. The noflash command
  462.  
  463. -------------------
  464.  
  465.  
  466.  
  467. This command toggles whether or not the screen flashes when you pick
  468.  
  469. up an item or are being hurt. By default the screen flashes.
  470.  
  471.  
  472.  
  473.  
  474.  
  475. The skinfix command
  476.  
  477. -------------------
  478.  
  479.  
  480.  
  481. When enabled this option eliminates the invalid skin# error messages
  482.  
  483. that can happen in normal Quake when you use a skin and have the eyes.
  484.  
  485. Unfortunately, the shaft appears a bit strange when you have the eyes
  486.  
  487. with this option enabled.
  488.  
  489.  
  490.  
  491.  
  492.  
  493. Remark on included .bot files
  494.  
  495. -----------------------------
  496.  
  497.  
  498.  
  499. The included .bot files in the random spawn list (in frogbot.cfg)
  500.  
  501. contain only name and teamplay 0 information. Other information may
  502.  
  503. be specified at runtime. By default bots will spawn in your team,
  504.  
  505. though the addbot0 to addbot13 are useful for simple start up of team
  506.  
  507. games.
  508.  
  509.  
  510.  
  511.  
  512.  
  513. Remark on recording demos
  514.  
  515. -------------------------
  516.  
  517.  
  518.  
  519. If you use addbot to spawn a random bot during a demo, on playback the
  520.  
  521. demo will contain the 'init' command, and the 'exec' command. To
  522.  
  523. avoid this, either have the bots already spawned, or include the
  524.  
  525. entire contents of your desired .bot file in an alias command.
  526.  
  527. For example: alias thresh "wait;lines=;wait;impulse 15;wait;name=;wait;impulse 212;wait;impulse 104;wait;impulse 114;wait;impulse 101;wait;impulse 115;wait;impulse 232;wait;impulse_0;wait;shirt=;wait;impulse 2;wait;pants=;wait;impulse 1;wait;addbot"
  528.  
  529. Then type 'thresh' to spawn your punching bag.
  530.  
  531.  
  532.  
  533.  
  534.  
  535. Teamplay rules
  536.  
  537. --------------
  538.  
  539.  
  540.  
  541. teamplay 0        - every man for himself.
  542.  
  543. teamplay 1        - teammate and self health protect.
  544.  
  545. teamplay 2        - teammate kill frag penalty.
  546.  
  547. teamplay 3        - teammate health protect.
  548.  
  549. teamplay 4        - teammate health and armor protect.
  550.  
  551. teamplay 5        - teammate health and armor protect, self health
  552.  
  553.                     protect.
  554.  
  555. (warning: in teamplay you suicide if you change pants color).
  556.  
  557. (note: unlike regular Quake, you must restart a map for new teamplay
  558.  
  559. settings to take effect with the Frogbot mod).
  560.  
  561.  
  562.  
  563.  
  564.  
  565. Deathmatch rules
  566.  
  567. ----------------
  568.  
  569.  
  570.  
  571. deathmatch 1      - all items respawn.
  572.  
  573. deathmatch 2      - only weapons stay.
  574.  
  575. deathmatch 3      - weapons stay and other items respawn.
  576.  
  577. deathmatch 4      - start with full armor, 250 health, all weapons
  578.  
  579.                     except the grenade launcher, unlimitted ammo.
  580.  
  581.                     health and armor respawn. quad becomes octa.
  582.  
  583. deathmatch 5      - start with full armor, 200 health, all weapons.
  584.  
  585.                     items besides weapons respawn.
  586.  
  587. deathmatch 6      - start with full armor, 100 health, all weapons,
  588.  
  589.                     sufficient ammo. no items. (not Rocket Arena, in
  590.  
  591.                     case you were wondering).
  592.  
  593.  
  594.  
  595.  
  596.  
  597. Gameplay commands
  598.  
  599. -----------------
  600.  
  601.  
  602.  
  603. powerup           - toggles powerups on and off.
  604.  
  605.  
  606.  
  607. rune              - allow/disallow runes.
  608.  
  609.                     strength: doubles the damage you inflict
  610.  
  611.                     resistence: halves the damage you receive
  612.  
  613.                     haste: increases your firing rate
  614.  
  615.                     regeneration: regenerates your health and/or armor
  616.  
  617.  
  618.  
  619. hook              - allow/disallow hook for clients (Frogbots don't
  620.  
  621.                     use it currently).
  622.  
  623.  
  624.  
  625. use_hook          - use the hook if it is allowed (bind this to a
  626.  
  627.                     convenient key).
  628.  
  629.  
  630.  
  631. custom            - toggle use of CTF custom sounds and models (you
  632.  
  633.                     need to copy the Threewave Capture Pak0.pak and
  634.  
  635.                     Pak1.pak files into the frogbot directory for
  636.  
  637.                     this to work). Note: CTF is not currently
  638.  
  639.                     supported.
  640.  
  641.  
  642.  
  643. match             - toggle countdown match mode.
  644.  
  645.  
  646.  
  647. ready             - start 15 second timer (in match mode).
  648.  
  649.  
  650.  
  651. rl_pref           - toggle Frogbots' preference of rocket launcher
  652.  
  653.                     over the shaft.
  654.  
  655.  
  656.  
  657.  
  658.  
  659. Physics altering commands
  660.  
  661. -------------------------
  662.  
  663.  
  664.  
  665. qwphysics         - enables QuakeWorld emulation in normal Quake.
  666.  
  667.  
  668.  
  669. qwaim             - enables QuakeWorld crosshair in normal Quake.
  670.  
  671.  
  672.  
  673. rune_rj           - if runes are allowed and rune_rj is set then
  674.  
  675.                     self-inflicted splash damage/momentum (eg. for a
  676.  
  677.                     rocket jump) is the same as for normal Quake.
  678.  
  679.  
  680.  
  681. lavacheat         - Toggles whether the Frogbots will cheat in their
  682.  
  683.                     avoidance of lava and cliffs.
  684.  
  685.  
  686.  
  687. lookcheat         - Toggles whether the Frogbots will cheat in their
  688.  
  689.                     ability to see you.
  690.  
  691.  
  692.  
  693.  
  694.  
  695. Skill settings
  696.  
  697. --------------
  698.  
  699.  
  700.  
  701. skill is from 0 to 200 (default 100 is the hardest noncheating skill).
  702.  
  703. Note: Once a Frogbot is spawned it retains its initial individual
  704.  
  705. skill level (the skill setting when it was spawned) even if you change
  706.  
  707. the skill variable at the console later. To change the skill of the
  708.  
  709. Frogbots you should remove them from the game.
  710.  
  711. Note: By spawning a few Frogbots, then changing the skill variable,
  712.  
  713. then spawning a few more Frogbots, you can have different skill
  714.  
  715. Frogbots in the same game.
  716.  
  717. Above skill 100 the Frogbots will cheat with their aim by not shooting
  718.  
  719. at the crosshair. For a challenge (or not) try skill 200 Frogbots with
  720.  
  721. lavacheat enabled.
  722.  
  723.  
  724.  
  725.  
  726.  
  727. User commands
  728.  
  729. -------------
  730.  
  731.  
  732.  
  733. frogbot           - Toggle the internal frogbot AI taking control of
  734.  
  735.                     your controls. Sit back and enjoy the smooth ride.
  736.  
  737.  
  738.  
  739. kascam            - Toggle kascam camera. This camera uses the
  740.  
  741.                     Kascam 'engine' but I have modified its interface.
  742.  
  743.                     Use fire button to change between the observer,
  744.  
  745.                     kascam, and kascam follow modes. Use jump to move
  746.  
  747.                     up in observer mode, and change target in the
  748.  
  749.                     other modes. impulse 1 toggles auto/lock target.
  750.  
  751.                     The observer mode is a modification of the CTF
  752.  
  753.                     observer mode.
  754.  
  755.  
  756.  
  757. time              - prints time (useful in match mode for the correct
  758.  
  759.                     time).
  760.  
  761.  
  762.  
  763.  
  764.  
  765. Miscellaneous commands
  766.  
  767. ----------------------
  768.  
  769.  
  770.  
  771. samelevel         - stores the above commands' configuration (you
  772.  
  773.                     could set it in your autoexec.cfg after you find
  774.  
  775.                     out what it is for a configuration - this number
  776.  
  777.                     may change in future versions).
  778.  
  779.  
  780.  
  781. framerate         - prints three framerate numbers on screen. For
  782.  
  783.                     debug/testing purposes only.
  784.  
  785.  
  786.  
  787. hide              - this toggles hiding many of the frogbot print
  788.  
  789.                     messages so that things seem more like a real
  790.  
  791.                     game (not recommended).
  792.  
  793.  
  794.  
  795. noskins           - if enabled this will not allow people or bots to
  796.  
  797.                     use skins (normal Quake).
  798.  
  799.  
  800.  
  801.  
  802.  
  803. Warning about restart command
  804.  
  805. -----------------------------
  806.  
  807.  
  808.  
  809. I advise against using the restart command. It is preferable to use
  810.  
  811. either the changelevel or map commands. The restart command doesn't
  812.  
  813. save parm information, so your settings will be those that you had at
  814.  
  815. the start of the previous map, not the end of the map.
  816.  
  817.  
  818.  
  819.  
  820.  
  821. Supported maps
  822.  
  823. --------------
  824.  
  825.  
  826.  
  827. Currently supported maps: dm4, dm6, ztndm3 ...   doh!
  828.  
  829. The commands map_dm4 and map_dm6 will remotely change the current map.
  830.  
  831.  
  832.  
  833.  
  834.  
  835. Notes on computer requirements and dedicated servers
  836.  
  837. ----------------------------------------------------
  838.  
  839.  
  840.  
  841. If you want to run a large game (say 8 or more players) then if you
  842.  
  843. are not using a Pentium II you will need to run a dedicated server. I
  844.  
  845. tested a dedicated server with 16 players (15 bots) first with a 66
  846.  
  847. MHZ 486 and then with a 133 MHZ Pentium. You can forget about running
  848.  
  849. a dedicated server with a 486, since I got only 10 fps with the 486.
  850.  
  851. The dedicated Pentium server on the other hand had 35 fps using
  852.  
  853. WinQuake and 40 fps (the maximum, set using sys_ticrat 0.025) using
  854.  
  855. the MS_DOS prompt.
  856.  
  857.  
  858.  
  859.  
  860.  
  861. About the mod
  862.  
  863. -------------
  864.  
  865.  
  866.  
  867. The Frogbot mod is a tribute to the excellent gameplay of multiplayer
  868.  
  869. LAN Quake and my continuing attempt to create a bot that is believably
  870.  
  871. human. I judge my efforts largely on the game product you play.
  872.  
  873.  
  874.  
  875. The current AI of the Frogbot is what I would regard as a fairly
  876.  
  877. minimal working model. I do intend to greatly improve it over time.
  878.  
  879. Though it is true that QuakeC presents limitations of all sorts, by
  880.  
  881. using a bit of ingenuity I have been able to push QuakeC to the
  882.  
  883. limits.
  884.  
  885.  
  886.  
  887. The first requirement of a 'human' bot, as opposed to a 'bot' bot, is
  888.  
  889. fluent navigational skills. With the sacrifice of using static
  890.  
  891. waypoints the Frogbot can achieve fluent navigation around a level,
  892.  
  893. and moreover can actually be programmed in QuakeC (this is assuming
  894.  
  895. todays relatively slow cpu speeds).
  896.  
  897.  
  898.  
  899. The Frogbot is basically an exact client emulation bot.
  900.  
  901.  
  902.  
  903. I have decided to make my so far incomplete efforts available to the
  904.  
  905. Quake community so that other people can share in the enjoyment of
  906.  
  907. playing the Frogbot.
  908.  
  909.  
  910.  
  911.  
  912.  
  913. Quakeworld version notes
  914.  
  915. ------------------------
  916.  
  917.  
  918.  
  919. I don't personally play Quakeworld since I only play LAN Quake. Though
  920.  
  921. I have done a Quakeworld version of the Frogbot mod for people who
  922.  
  923. prefer Quakeworld. If you are running a Quakeworld server and client
  924.  
  925. on the same computer then you should use the Priority Controller by
  926.  
  927. Alan 'Strider' Kivlin. The Quakeworld version is more choppy than the
  928.  
  929. Quake version. I have tried to fix this by emulating the network
  930.  
  931. messages sent by clients with the help of the Qizmo proxy
  932.  
  933. (http://qizmo.sci.fi). To enable this mode the server should execute
  934.  
  935. the command line:
  936.  
  937. localinfo proxy 1
  938.  
  939. To disable this mode (if you have enabled it - it is off by default)
  940.  
  941. the server should execute the command line:
  942.  
  943. localinfo proxy 0
  944.  
  945. You must connect through a proxy that is compatible with this mode,
  946.  
  947. such as the Qizmo proxy. It does seem to make a difference, though I
  948.  
  949. haven't implemented the full range of client network prediction
  950.  
  951. messages. The network code is in SetPlayerInfo in lists.qc. I am open
  952.  
  953. to anyone with an understanding of the qwd specs to send me their
  954.  
  955. version of this function to me. They could use in addition to the
  956.  
  957. current variables (and others like frametime), the enumerated
  958.  
  959. variables QW_version, self.arrow, self.button0, self.button2.
  960.  
  961. PLEASE DO NOT ASK ME HOW TO GET QIZMO WORKING WITH THE FROGBOT. I
  962.  
  963. managed to get it working with the command line:
  964.  
  965. C:\qizmo\QIZMO.EXE -a frogbot -b c:\quake -p 27501
  966.  
  967. This was after I had run qwsv.exe and priority.exe. Then I connected
  968.  
  969. to the proxy with:
  970.  
  971. connect localhost:27501
  972.  
  973.  
  974.  
  975.  
  976.  
  977. Copyright and Distribution Permissions
  978.  
  979. --------------------------------------
  980.  
  981.  
  982.  
  983. The modifications included in this archive are Copyright 1998, Robert
  984.  
  985. Field. The original QuakeC source is Copyright 1996, id software.
  986.  
  987.  
  988.  
  989. You may distribute this Quake modification in any electronic format as
  990.  
  991. long as all the files in this archive remain intact and unmodified and
  992.  
  993. are distributed together.
  994.  
  995.  
  996.  
  997.  
  998.  
  999. Disclaimer
  1000.  
  1001. ----------
  1002.  
  1003.  
  1004.  
  1005. Software under this agreement is under no kind of warranty. Software
  1006.  
  1007. under this agreement is provided as is, and isn't guaranteed in any
  1008.  
  1009. way by the mod author. Use this software at your own risk.
  1010.  
  1011.  
  1012.  
  1013.  
  1014.  
  1015. Code Credits
  1016.  
  1017. ------------
  1018.  
  1019.  
  1020.  
  1021. id softare for Quake and QuakeC.
  1022.  
  1023.  
  1024.  
  1025. Alan 'Strider' Kivlin whose scoreboard code let me understand how to
  1026.  
  1027. do the scoreboard for QuakeC bots (normal Quake and Quakeworld). He
  1028.  
  1029. also indirectly taught me the color bot and thud removal methods.
  1030.  
  1031.  
  1032.  
  1033. Mr Elusive for suggesting a better stair climbing method, and for
  1034.  
  1035. suggesting Alan Kilvin's color bot and thud removal methods.
  1036.  
  1037.  
  1038.  
  1039. Simon Byrnand whose bot physics code gave me an idea to make the above
  1040.  
  1041. stair climbing code more efficient (I was able to eliminate my call to
  1042.  
  1043. droptofloor).
  1044.  
  1045.  
  1046.  
  1047. Uwe Girlich for the unofficial DEM and QW format description which
  1048.  
  1049. partially helped me to extend Alan's scoreboard code idea to support
  1050.  
  1051. selectable bot names (in Quake and QuakeWorld).
  1052.  
  1053.  
  1054.  
  1055. Karel 'Kasuha' Suhajda for the KasCam DeathMatch Camera code.
  1056.  
  1057.  
  1058.  
  1059. Dave 'Zoid' Kirsch for the CTF code.
  1060.  
  1061.  
  1062.  
  1063.  
  1064.  
  1065. Compiler Credit
  1066.  
  1067. ---------------
  1068.  
  1069.  
  1070.  
  1071. This mod was compiled with meqcc.exe, the 'undecompilable' QuakeC
  1072.  
  1073. compiler written by Mr Elusive. The resulting progs.dat is shorter
  1074.  
  1075. than that produced with most compilers.
  1076.  
  1077.  
  1078.  
  1079. John Cook for the preqcc precompiler.
  1080.  
  1081.  
  1082.  
  1083.  
  1084.  
  1085. Names Credit
  1086.  
  1087. ------------
  1088.  
  1089.  
  1090.  
  1091. Timm Stokke for zap, yoda, frag-god, dragon, Superman, and dizzy.
  1092.  
  1093.  
  1094.  
  1095. Mark 'Dethon' Petler for killingmachine, generalfailure, corpsegrind,
  1096.  
  1097. and addicted2quake.
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103. Further Thanks
  1104.  
  1105. --------------
  1106.  
  1107.  
  1108.  
  1109. Tony Browneller for his excellent Frogbot name Editor.
  1110.  
  1111.  
  1112.  
  1113. Mr Elusive for providing inspiration with his impressive Omicron bot.
  1114.  
  1115. If you haven't played it then what are you waiting for!
  1116.  
  1117.  
  1118.  
  1119. Timm Stokke for helping with the beta testing, for providing space
  1120.  
  1121. on Metropolis and being curious about the Frogbot when it was a
  1122.  
  1123. Tadpolebot. :)
  1124.  
  1125.  
  1126.  
  1127. Alan 'Strider' Kivlin for writing the Priority Controller program
  1128.  
  1129. which enables having a Quakeworld server and client on the one
  1130.  
  1131. computer.
  1132.  
  1133.  
  1134.  
  1135. The Bot Epidemic and Randar for their support.
  1136.  
  1137.  
  1138.  
  1139. All the people who have given me feedback (positive or negative),
  1140.  
  1141. especially with regard to bugs.
  1142.  
  1143.  
  1144.  
  1145. To anyone who wants to do me a better readme. :)
  1146.  
  1147.